Traditional "plug and play" techniques are well known in the art. Generally, an operating system (such as Microsoft Windows) comes already loaded with installation files for many of the devices the user is likely to want to attach to the computer. Then, when a user physically connects a new device to the computer, the device signals the operating system and identifies itself. The operating system then searches its file structure for the corresponding installation file and, if it finds one, runs the installation file so as to install the device automatically with minimal user interaction. If, on the other hand, the operating system cannot find an installation file corresponding to the new device, the operating system typically opens a dialog box with the user, inviting the user to supply an installation file from an external source such as a floppy disk or a CD.
While "plug and play" functionality is an extremely useful and convenient feature, the current state of the art leaves room for improvement in several areas. A first problem is a functional timing problem. Device manufacturers release new devices all the time. Operating system releases tend to be relatively infrequent, however. Thus, it is very difficult, if not impossible, for device manufacturers to anticipate their new product development implementation programs in order to include installation files for those new products in significantly earlier operating system releases.
A further business problem attends the functional timing problem just described. Even if a device manufacturer is physically able to anticipate the release of a new product so as to include an installation file on an earlier operating system release, the device manufacturer may not want to do this. The launch of a new product is often made according to a well-orchestrated pre-launch marketing schedule. The success of the launch is often related to the effectiveness of the pre-launch marketing schedule. It therefore may not be optimal, from a business standpoint, for a device manufacturer to "pre-announce" a new product prematurely by creating an installation file for the new product, just so that an operating system manufacturer can include that installation file in a significantly earlier release of the operating system software.
A further problem with the state of the current art in "plug and play" technology is that it is not flexible to allow device manufacturers to fix bugs or upgrade the firmware in devices after release of the corresponding installation file to the operating system manufacturer. This problem applies whether the device is to be newly released or has been in circulation for some time. The installation file released with the operating system relates to operation of the device at the time that the installation file was given to the operating system manufacturer. It is reasonable to expect that the device manufacturer will fix bugs, enhance, or upgrade the device over time. If the characteristics of the device change over time such that the original installation file given to operating system manufacturers becomes inoperable or obsolete, the advantages of "plug and play" are lost, since the device manufacturer must now ship updated installation files with the corrected, enhanced or updated product.
There is therefore a need in the art to enable device manufacturers to supply installation files to operating systems on more of a real time basis, advantageously according to the needs and conveniences of the device manufacturer, while still taking advantage of existing "plug and play" functionality in operating systems.